package com.ldxiwxr.common.utils;

import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import com.ldxiwxr.common.common.MedicineHighLight;
import com.ldxiwxr.common.common.Solar;
import org.apache.commons.lang3.StringUtils;

import static com.ldxiwxr.common.constant.SolarTermsConstant.*;

/**
 * 节气工具类
 * @author  SuBanxia
 */
public class SolarUtils {
    /**
     * 获取节气详情
     */
    public static Solar getSolar(){
        //发送GET请求获取获取返回的对应的json对象
        try {
            String rspStr1 = HttpUtil.createGet(SOLAR_API_HTTP + SOLAR_API_KEY)
                    .execute()
                    .body();
            //判断返回对象是否为空
            if (StringUtils.isEmpty(rspStr1)) {
                return null;
            }
            //读取获取到的节气内容
            JSONObject json1 = new JSONObject(rspStr1);
            JSONObject result1 = json1.getJSONObject("result");
            JSONObject now = result1.getJSONObject("now");
            String name = now.getStr("name");

            String rspStr2 = HttpUtil.createGet(JUHE_SOLAR_API_HTTP + "?key=" + JUHE_SOLAR_API_KEY + "&word=" + name)
                    .execute()
                    .body();
            //判断返回对象是否为空
            if (StringUtils.isEmpty(rspStr2)) {
                return null;
            }

            //读取获取到的节气内容
            JSONObject json2 = new JSONObject(rspStr2);
            JSONObject result2 = json2.getJSONObject("result");

            //创建对象给它赋值
            Solar solar = new Solar();
            solar.setName(name);
            solar.setShiJu(result2.getStr("shiju"));
            solar.setYiJi(result2.getStr("yiji"));
            solar.setMeiShi(result2.getStr("meishi"));
            //返回对象
            return solar;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}
